// pages/detail/detail.js

import { Cache } from "../../utils/cache.js"
import { URL, VERSION } from "../../config/api.js"

import wxParse from "../../wxParse/wxParse.js"

const cache = new Cache()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    detail: null,
    content: "",//评论的内容
    id: 0,
    pid: 0,//评论的pid,
    isFocus: false
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 获取详情
    this.setData({
      id: options.id
    })
    this.getDetail(options.id)
  },

  getDetail: function (id) {
    let token = cache.getCache('token')
    wx.request({
      url: URL + VERSION + 'detail/' + id,
      header: { AUTHORIZATION: token },
      success: res => {
        // 处理详情
        wxParse.wxParse("content_detail", "html", res.data.data.conent , this)
        this.setData({
          detail: res.data.data
        })
      }
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },
  /**
   * 输入框失焦时间
   */
  commentBlur: function (event) {
    this.setData({
      content: event.detail.value
    })
  },
  /**
   * 发表评论
   */
  sendComment: function () {

    if (!this.data.content.length) {
      wx.showToast({
        title: '评论内容不能为空',
        icon: "error"
      })
      return
    }
    let token = cache.getCache('token')
    wx.request({
      url: URL + VERSION + 'comment',
      header: { AUTHORIZATION: token },
      method: "POST",
      data: { content: this.data.content, article_id: this.data.id, pid: this.data.pid },
      success: res => {
        console.log(res)
        if (res.data.code == 3101) {
          wx.showToast({
            title: res.data.msg,
            icon: "error"
          })
          return
        }
        this.setData({
          content: ""
        })
        this.getDetail(this.data.id)
      }
    })
  },
  /**
   * 点击回复
   */
  reply: function (event) {
    var query = wx.createSelectorQuery().in(this);
    query.selectViewport().scrollOffset()
    // comm 跳转到指定id位置
    query.select("#comm").boundingClientRect();
    query.exec(function (res) {
      var miss = res[0].scrollTop + res[1].top - 10;
      wx.pageScrollTo({
        scrollTop: miss,
        duration: 300
      })
    })
    if (event.type == "tap") {
      var pid = event.currentTarget.dataset.pid
    } else {
      var pid = event.detail.pid
    }
    this.setData({
      pid: pid,
      isFocus: true
    })

  }
})